<?
	/* Se asegura que el archivo es incluido por el index */
		defined( 'LOAD_MODULE_ACTION' ) or die( 'No esta permitido el acceso directo a ' . __FILE__ );
	/* Cuando se hace el include del archivo automaticamente crea un objeto y lo guarda en una variable temporal */
		$this->oTmpObject = new Producto_Compuesto_lst( $this );

	class Producto_Compuesto_lst extends Lst
	{
	function Producto_Compuesto_lst( &$oModule )
		{
			$this->Lst( $oModule );
		}
	function initialize()
		{
			$this->oFiltro = $this->oModule->loadClass( 'Producto_compuesto_frm' );
			$this->aFields = array_merge ( (array)$this->aFields,  (array)$this->oFiltro->getFieldArray() );
			
			$this->setTitle ( "Producto Compuesto" );
			$this->setSummary( "Esta tabla contiene los Productos Compuestos" );
			$this->addColumn ( 'Nombre', 'cdProductoB', true );
			$this->addColumn ( 'Cantidad', 'nqProductoB', true );
		}
	function query()
		{
			// Arma el Query
				$cSql = "SELECT PCo.ncProductoA, PrA.cdProducto as cdProductoA, PCo.ncProductoB, PrB.cdProducto as cdProductoB, PCo.nqProductoB
									FROM gtProductoCompuesto PCo
									JOIN gtProducto AS PrA
										ON PrA.ncProducto = PCo.ncProductoA
									JOIN gtProducto AS PrB
										ON PrB.ncProducto = PCo.ncProductoB";
			// Arma el Filtro de la Consulta
				$this->oWhere->addArray ( $this->oFiltro->getFilterdArray('PCo') );
				$cSql .= $this->oWhere->make();
			return $cSql;
		}
	function makeListActions()
		{
			$cParametroRegistro =  $this->getFieldString();
			$this->addListAction ( AGREGAR_UNA_SUBPRODUCTO_A_UN_PRODUCTO_COMPUESTO, $cParametroRegistro, 'I' );
		}
	function makeRowActions( $aRow )
		{
			$cParametroRegistro =  "ncProducto=" . $aRow["ncProductoA"] . "&amp;ncProductoB=" . $aRow["ncProductoB"] ;
			$this->addRowAction ( MODIFICAR_UN_SUBPRODUCTO_DE_UNA_COMPOSION, $cParametroRegistro );
			$this->addRowAction ( ELIMINAR_UN_SUBPRODUCTO_DE_UNA_COMPOSICION, $cParametroRegistro);
		}
	}
?>